<template>
  <div>
    <TypeNav></TypeNav>
    <Container></Container>
    <Recommend></Recommend>
    <Rank></Rank>
    <Like></Like>
    <Floor v-for="floor in floorList" :key="floor.id" :floor="floor"></Floor>
    <Brand></Brand>
  </div>
</template>

<script>
import Container from './Container'
import Recommend from './Recommend'
import Rank from './Rank'
import Like from './Like'
import Floor from './Floor'
import Brand from './Brand'
import { mapState } from 'vuex'
export default {
  name: 'Home',
  components: {
    Container,
    Recommend,
    Rank,
    Like,
    Floor,
    Brand
  },
  methods: {
    getFLoorList() {
      this.$store.dispatch('getFloorList')
    }
  },
  mounted() {
    this.getFLoorList()
    // 在home组件中请求用户数据，只能解决home组件刷新时有用户信息，其他组件(比如search组件)刷新页面用户数据依旧没有
    // 所以我们不在home组件中请求用户数据,如果要解决这个问题我们需要在每个组件挂载的时候请求用户数据，比较麻烦，这个时候我们就需要使用导航守卫
    // 导航守卫介绍请看router文件夹下的index.js文件
    // this.$store.dispatch('getUserInfo')
  },
  computed: {
    ...mapState({
      floorList:state=>state.home.floorList
    })
  }
}
</script>

<style lang="less" scoped>

</style>
